package com.ml.mall.service;

import com.ml.mall.bean.page.Page;
import com.ml.mall.bean.req.BaseDateRangeReq;
import com.ml.mall.bean.req.admin.category.AdminCategoryQueryPageReq;
import com.ml.mall.bean.req.admin.purchase.PurchaseQueryOneReq;
import com.ml.mall.bean.req.admin.purchase.PurchaseQueryReportPageReq;
import com.ml.mall.bean.req.admin.supplier.SupplierQueryOneReq;
import com.ml.mall.bean.res.admin.category.AdminCategoryQueryPageRes;
import com.ml.mall.bean.res.admin.supplier.SupplierQueryOneRes;
import com.ml.mall.bean.res.partner.PartnerRegisterCompanyRes;
import com.ml.mall.bean.res.partner.PartnerSupplierQueryPageRes;
import com.ml.mall.bean.res.partner.PartnerSupplierQueryReportRes;

import java.util.List;

/**
 * Created by kyyang on 2021/6/28 23:20
 */
public interface AnalyticsPartnersService {
    /**
     * @description: 查询合作商名下每日注册公司
     * @author kyyang
     * @date 2021/6/28 23:21
     * @version 1.0
     */
    PartnerRegisterCompanyRes getPartnersRegisterCompany(BaseDateRangeReq req) throws Exception;

    /**
     * @description: 查询供货商卖家每日销售
     * @author kyyang
     * @date 2021/6/30 22:49
     * @version 1.0
     */
    List<PartnerSupplierQueryReportRes> partnerSupplierQueryReport(BaseDateRangeReq req)throws Exception;


    /**
     * @description: 分页查询合作商下所有卖家 销售额
     * @author kyyang
     * @date 2021/7/1 21:50
     * @version 1.0
     */
    Page<PartnerSupplierQueryPageRes> partnerSupplierQueryPage(PurchaseQueryReportPageReq req)throws Exception;

    /**
     * @description: 查询合作商下属某个卖家的统计报告
     * @author kyyang
     * @date 2021/7/1 22:20
     * @version 1.0
     */
    SupplierQueryOneRes partnerSupplierQueryOneReport(SupplierQueryOneReq req) throws Exception;

    /**
     * @description: 查询合作商下属供货商 目录销售额分页
     * @author kyyang
     * @date 2021/7/1 22:41
     * @version 1.0
     */
    Page<AdminCategoryQueryPageRes> partnerSupplierQueryCategorySalesPage(AdminCategoryQueryPageReq req) throws Exception;
}
